/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package model.service.impl;

import model.service.EstatutoService;
import model.dao.EstatutoDao;
import java.util.List;
import model.bean.Estatuto;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * @Archivo EstatutoServiceImpl.java
 * @Fecha                @Autor   @Cambios
 * 21/01/2011 03:34:32 PM       moshiro
 */
@Service
public class EstatutoServiceImpl implements EstatutoService {

    @Autowired
    private EstatutoDao estatutoDao;

    @Override
    public Long agregarEstatuto(Estatuto estatuto) throws Exception {
        return estatutoDao.agregarEstatuto(estatuto);
    }

    @Override
    public Integer modificarEstatuto(Estatuto estatuto) throws Exception {
        if (!estatuto.getFechaCreacion().isEmpty()) {
            java.util.Date fecha = (new java.text.SimpleDateFormat("dd/MM/yyyy")).parse(estatuto.getFechaCreacion());
            estatuto.setFechaCreacion((new java.text.SimpleDateFormat("yyyy/MM/dd")).format(fecha));
        } else if (!estatuto.getFechaModificacion().isEmpty()){
            java.util.Date fecha = (new java.text.SimpleDateFormat("dd/MM/yyyy")).parse(estatuto.getFechaModificacion());
            estatuto.setFechaModificacion((new java.text.SimpleDateFormat("yyyy/MM/dd")).format(fecha));
        }
        estatuto.setDocumento(null);
        return estatutoDao.modificarEstatuto(estatuto);
    }

    @Override
    public Integer eliminarEstatuto(Long codigo) throws Exception {
        return estatutoDao.eliminarEstatuto(codigo);
    }

    @Override
    public List<Estatuto> listarEstatuto(Estatuto estatuto) throws Exception {
        return estatutoDao.listarEstatuto(estatuto);
    }

    @Override
    public Estatuto obtenerEstatuto(Estatuto estatuto) throws Exception {
        List<Estatuto> listado = estatutoDao.listarEstatuto(estatuto);
        return !listado.isEmpty() ? listado.get(0) : null;
    }
}
